package com.sumainfor.wx.system.feign;

import com.sumainfor.common.util.JsonResult;
import com.sumainfor.wx.system.fallback.FeignMarketFallback;
import com.sumainfor.wx.system.feign.MarketFeign.MarketFeign;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.Map;

/**
 * 功能描述:
 *
 * @Auther: zhlu
 * @Date: 2019/1/18 15:59
 * @Description:
 */
@FeignClient(name = "TANGNEST-PC-MARKET", fallback = FeignMarketFallback.class)
public interface BaseFeignMarket extends MarketFeign{


   @PostMapping("/rentadviser/RdWorderController/addWorder")
   JsonResult addWorder(@RequestBody Map<String,Object> params);


    /**
     * 发起签约
     * @author zhoucong
     * @data 2019/8/19
     * @Param
     * @return
     */
    @PostMapping("/rentadviser/RdPactController/addPact")
    JsonResult addPact(@RequestBody Map<String,Object> params);


    /**
     * 接受转单
     * @author zhoucong
     * @data 2019/8/19
     * @Param
     * @return
     */
    @PostMapping("/rentadviser/RdWorderController/addWorderOrWorderInfo")
    JsonResult addWorderOrWorderInfo(@RequestBody Map<String,Object> params);


    /**
     * 获取所有的省份
     * @author zhoucong
     * @data 2019/8/20
     * @Param
     * @return
     */
    @GetMapping("/tenant/key/area/getProvinceList")
    JsonResult getProvinceList(@RequestParam Map<String,Object> params);

    /**
     * 市
     * @author zhoucong
     * @data 2019/8/20
     * @Param
     * @return
     */
    @GetMapping("/tenant/key/area/getCityList")
    JsonResult getCityList(@RequestParam Map<String,Object> params);

    /**
     * 区
     * @author zhoucong
     * @data 2019/8/20
     * @Param
     * @return
     */
    @GetMapping("/tenant/key/area/getDistrictList")
    JsonResult getDistrictList(@RequestParam Map<String,Object> params);



    /**
     *租赁顾问输入房源编号的时候查询该套房以及签约的水燃收费标准
     * @author zhoucong
     * @data 2019/9/2
     * @Param
     * @return
     */
    @GetMapping("/rentadviser/RdPactController/getWgMeter")
    JsonResult getWgMeter(@RequestParam Map<String,Object>params);


    /**
     * 根据房源编号查询活动优惠之后的价格
     */
    @PostMapping("/tenant/key/rentadviser/RdWxActivity/getOptimalActivity")
    JsonResult getOptimalActivity(@RequestBody Map<String,Object> params);



    /**
     * 查询合同的换房信息、转租信息
     */
    @GetMapping("/rentadviser/RdPactController/getRdPactTenList")
    JsonResult getRdPactTenList(@RequestParam Map<String,Object>params);



    /**
     * 工单确认到达(发钥匙)
     */
    @PostMapping("/rentadviser/RdWorderInfo/updateWorderInfoIfArrive")
    JsonResult updateWorderInfoIfArrive(@RequestBody Map<String,Object>params);


    /**
     * 根据房间id查询整套房源房间信息及房间配置和公共区域配置信息
     */
    @GetMapping("/rentadviser/RdHousingInfoController/getHousingInfoByHouInfoId")
    JsonResult getHousingInfoByHouInfoId(@RequestParam Map<String, Object> params);




    @PostMapping("/rentadviser/RdTenantController/saveOrUpdateTenant")
    JsonResult saveOrUpdateTenant(@RequestBody Map<String,Object> params);



    /**
     * 获取蜂电电表当前读数
     */
    @PostMapping("/rentadviser/RdInteBee/getInteDeviceBeeList")
    JsonResult getInteDeviceBeeList(@RequestBody Map<String,Object> params);

}
